Prolog Meta-interpreters for Rulebased Inference under Uncertainty
نویسنده
چکیده
Uncertain facts and inexact rules can be represented and processed in standard Prolog through meta-interpretation. This requires the specification of appropriate parsers and belief calculi. We present a meta-interpreter that takes a rule-based belief calculus as an external variable. The certainty-factors calculus and a heuristic Bayesian belief-update model are then implemented as stand-alone Prolog predicates. These, in turn, are bound to the meta-interpreter environment through secondorder programming. The resulting system is a powerful experimental tool which enables inquiry into the impact of various designs of belief calculi on the external validity of expert systems. The paper also demonstrates the (well-known) role of Prolog meta-interpreters in building expert system shells. Center for Digital Economy Research Stem School of Business IVorking Paper IS-87-91 .
منابع مشابه
Implementing Prolog Extensions: a Parallel Inference Machine
We present in this paper a general inference machine for building a large class of meta-interpreters. In particular, this machine is suitable for implementing extensions of Prolog with non-classical logics. We give the description of the abstract machine model and an implementation of this machine in a fast language (ADA), along with a discussion on why and how parallelism can easily increase s...
متن کاملBuilding embedded languages and expert system shells in Prolog
This paper concerns building embedded languages in Prolog, with special attention on expert system shells. First, the paradigm of meta-programming, of which building embedded languages is an example, is discussed. Second, we review interpreters for embed ded languages, concentrating on meta-interpreters. Fi nally, two applications, explanation and uncertainty reasoning, are presented and the ...
متن کاملApproaches to Interpreter Composition
In this paper, we compose six different Python and Prolog VMs into 4 pairwise compositions: one using C interpreters; one running on the JVM; one using meta-tracing interpreters; and one using a C interpreter and a meta-tracing interpreter. We show that programs that cross the language barrier frequently execute faster in a meta-tracing composition, and that meta-tracing imposes a significantly...
متن کاملPROLOG: a language for implementing expert systems
We briefly describe the logic programming language PROLOG concentrating on those aspects of the language that make it suitable for implementing expert systems. We show how features of expert systems such as: (1) inference generated requests for data, (2) probabilistic reasoning, (3) explanation of behaviour can be easily programmed in PROLOG. We illustrate each of these features by showing how ...
متن کاملIntuitionistic fuzzy Prolog
A logic programming system which uses a theory of intuitionistic fuzzy sets to model various forms of uncertainty is presented. To represent uncertainty of facts and rules, a pair of two different real numbers (degree of truth and degree of falsity) are associated. The problem of propagating uncertainty through logical inference and various models of interpretation are considered. The framework...
متن کامل